//应用初始化
/* ====================================
 * =  所有的uniCloud后台数据在这里执行  =
 * ====================================
 */



/* ==================================
 * =  由于NVUE纯原生不支持“全局挂载”  =
 * =  所以这里使用 “条件编译” 来区分  =
 * ==================================
 */

//非NVUE
// #ifdef H5 || MP || APP-VUE
export default (params)=> {
	console.log("params")
	console.log(params)
	const type = params.type
	const val = params.val//判断是否为首次启动
	if (val == 'get') {
		console.log("首次启动")
		uni.showLoading({
			title:"加载中"
		})
	} else {
		console.log("非首次启动")
	}
	
	return new Promise((resolver,reject)=>{
		switch(type){
			case 'xtsetting_get':{
				xtSetting()
				break;
			}
			case 'cat_jieko_get':{
				CatJiekoGet()
				break;
			}
			case 'banner_get':{
				bannerImage()
				break;
			}
			case 'cainizaizhuiImage_get':{
				cainizaizhuiImage()
				break;
			}
		}
		//客户端管理>软件设置
		function xtSetting() {
			uniCloud.callFunction({
				name:"FatFatMeng_admin",
				data:{
					type:"xtsetting_get"
				},
				success: (res) => {
					console.log("获取后台配置成功")
					
					//console.log(res.result.data[0])
					resolver(res.result.data[0])
					// 将数据储存到本地缓存中
					uni.setStorageSync('xtsetting',res.result.data[0])
				},
				fail: (err) => {
					console.log("获取后台配置失败")
					//console.log(err)
					reject(err)
				},
				complete() {
					uni.hideLoading()
				}
			})
		}
		//影视分类>>一级分类
		function CatJiekoGet(){
			uniCloud.callFunction({
				name:"FatFatMeng_admin",
				data:{
					type:"cat_jieko_get"
				},
				success: (res) => {
					console.log("获取 一级分类数据 成功")
					for (let i=0; i<res.result.data.length; i++) {
						//将app_sort字段统一修改为0
						//用于onReady，切换分类时判断是否是初次渲染
						res.result.data[i].app_sort = 0
					}
					console.log(res.result.data)
					resolver(res.result.data)
					// 将数据储存到本地缓存中
					uni.setStorageSync('cat_jieko',res.result.data)
				},
				fail: (err) => {
					console.log("获取 一级分类 数据失败")
					console.log(err)
					reject(err)
				},
				complete() {
					uni.hideLoading()
				}
			})
		}
		//客户端管理>轮播图设置
		function bannerImage() {
			uniCloud.callFunction({
				name:"FatFatMeng_admin",
				data:{
					type:"banner"
				},
				success: (res) => {
					console.log("获取 轮播图数据 成功")
					
					//console.log(res.result.data[0])
					resolver(res.result.data)
					// 将数据储存到本地缓存中
					uni.setStorageSync('banner',res.result.data)
				},
				fail: (err) => {
					console.log("获取 轮播图数据 失败")
					//console.log(err)
					reject(err)
				},
				complete() {
					uni.hideLoading()
				}
			})
		}
		//客户端管理>猜你在追设置
		function cainizaizhuiImage() {
			uniCloud.callFunction({
				name:"FatFatMeng_admin",
				data:{
					type:"cainizaizhui"
				},
				success: (res) => {
					console.log("获取 猜你在追数据 成功")
					
					//console.log(res.result.data[0])
					resolver(res.result.data)
					// 将数据储存到本地缓存中
					uni.setStorageSync('cainizaizhuiImage',res.result.data)
				},
				fail: (err) => {
					console.log("获取 猜你在追数据 失败")
					//console.log(err)
					reject(err)
				},
				complete() {
					uni.hideLoading()
				}
			})
		}
	})
}
// #endif



//只在NVUE
// #ifdef APP-NVUE

export default {
	data() {
		return {
			
		}
	},
	methods:{
		//方法名和main.js全局挂载名字保持一致
		//实现跨端
		admin(params){
			console.log("params")
			console.log(params)
			const type = params.type
			const val = params.val//判断是否为首次启动
			if (val == 'get') {
				console.log("首次启动")
				uni.showLoading({
					title:"加载中"
				})
			} else {
				console.log("非首次启动")
			}
			
			return new Promise((resolver,reject)=>{
				switch(type){
					case 'xtsetting_get':{
						xtSetting()
						break;
					}
					case 'cat_jieko_get':{
						CatJiekoGet()
						break;
					}
					case 'banner_get':{
						bannerImage()
						break;
					}
					case 'cainizaizhuiImage_get':{
						cainizaizhuiImage()
						break;
					}
				}
				//客户端管理>软件设置
				function xtSetting() {
					uniCloud.callFunction({
						name:"FatFatMeng_admin",
						data:{
							type:"xtsetting_get"
						},
						success: (res) => {
							console.log("获取后台配置成功")
							//console.log(res.result.data[0])
							resolver(res.result.data[0])
							// 将数据储存到本地缓存中
							uni.setStorageSync('xtsetting',res.result.data[0])
						},
						fail: (err) => {
							console.log("获取后台配置失败")
							//console.log(err)
							reject(err)
						},
						complete() {
							uni.hideLoading()
						}
					})
				}
				//影视分类>>一级分类
				function CatJiekoGet(){
					uniCloud.callFunction({
						name:"FatFatMeng_admin",
						data:{
							type:"cat_jieko_get"
						},
						success: (res) => {
							console.log("获取 一级分类数据 成功")
							for (let i=0; i<res.result.data.length; i++) {
								//将app_sort字段统一修改为0
								//用于onReady，切换分类时判断是否是初次渲染
								res.result.data[i].app_sort = 0
							}
							console.log(res.result.data)
							resolver(res.result.data)
							// 将数据储存到本地缓存中
							uni.setStorageSync('cat_jieko',res.result.data)
						},
						fail: (err) => {
							console.log("获取 一级分类 数据失败")
							console.log(err)
							reject(err)
						},
						complete() {
							uni.hideLoading()
						}
					})
				}
				//客户端管理>轮播图设置
				function bannerImage() {
					uniCloud.callFunction({
						name:"FatFatMeng_admin",
						data:{
							type:"banner"
						},
						success: (res) => {
							console.log("获取 轮播图数据 成功")
							
							//console.log(res.result.data[0])
							resolver(res.result.data)
							// 将数据储存到本地缓存中
							uni.setStorageSync('banner',res.result.data)
						},
						fail: (err) => {
							console.log("获取 轮播图数据 失败")
							//console.log(err)
							reject(err)
						},
						complete() {
							uni.hideLoading()
						}
					})
				}
				//客户端管理>猜你在追设置
				function cainizaizhuiImage() {
					uniCloud.callFunction({
						name:"FatFatMeng_admin",
						data:{
							type:"cainizaizhui"
						},
						success: (res) => {
							console.log("获取 猜你在追数据 成功")
							
							//console.log(res.result.data[0])
							resolver(res.result.data)
							// 将数据储存到本地缓存中
							uni.setStorageSync('cainizaizhuiImage',res.result.data)
						},
						fail: (err) => {
							console.log("获取 猜你在追数据 失败")
							//console.log(err)
							reject(err)
						},
						complete() {
							uni.hideLoading()
						}
					})
				}
			})
		}
	}
}


// #endif